package com.air.service;

import com.air.dto.BaggageDTO;
import com.air.dto.BaggagePageQueryDTO;
import com.air.result.PageResult;
import com.air.vo.BaggageVO;

import java.util.List;

public interface BaggageService {

    /**
     * 添加行李订单
     */
    void save(BaggageDTO baggageDTO);

    /**
     * 分页查询
     * @param baggagePageQueryDTO
     * @return
     */
    PageResult pageQuery(BaggagePageQueryDTO baggagePageQueryDTO);

    /**
     * 乘客添加行李
     * @param baggageDTO
     */
    void saveByPassenger(BaggageDTO baggageDTO);

    /**
     * 批量删除
     * @param ids
     */
    void deleteBatch(List<Long> ids);

    /**
     * 修改行李信息
     * @param baggageDTO
     */
    void update(BaggageDTO baggageDTO);

    /**
     * 根据id查询行李信息
     * @param id
     * @return
     */
    BaggageVO getById(Long id);

    /**
     * 根据乘客id查询行李信息
     * @param id
     * @return
     */
    List<BaggageVO> getByPassengerId(Long id);

    /**
     * 退行李
     * @param id
     */
    void refund(List<Long> id);

    /**
     * 根据航空id查询行李信息
     * @param id
     * @return
     */
    List<BaggageVO> list(Long id);
}
